home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 25 / AACD 25.iso / AACD / Programming / yaec / modules / intuition.e < prev    next >
Encoding:
Text File  |  2001-08-12  |  17.8 KB  |  160 lines

  1. OPT MODULE
  2. OPT EXPORT
  3. -> Module created with E:bin/fd2module from YAECv18 package.
  4. OPT NDDC
  5. ->  Public functions OpenIntuition() and Intuition() are intentionally
  6. ->  not documented.
  7. #macro OpenIntuition() IS (A6:=intuitionbase) BUT ASM ' jsr -30(a6)'
  8. #macro Intuition(iEvent) IS (A0:=iEvent) BUT (A6:=intuitionbase) BUT ASM ' jsr -36(a6)'
  9. #macro AddGadget(window,gadget,position) IS Stores(intuitionbase,window,gadget,position) BUT Loads(A6,A0,A1,D0) BUT ASM ' jsr -42(a6)'
  10. #macro ClearDMRequest(window) IS (A0:=window) BUT (A6:=intuitionbase) BUT ASM ' jsr -48(a6)'
  11. #macro ClearMenuStrip(window) IS (A0:=window) BUT (A6:=intuitionbase) BUT ASM ' jsr -54(a6)'
  12. #macro ClearPointer(window) IS (A0:=window) BUT (A6:=intuitionbase) BUT ASM ' jsr -60(a6)'
  13. #macro CloseScreen(screen) IS (A0:=screen) BUT (A6:=intuitionbase) BUT ASM ' jsr -66(a6)'
  14. #macro CloseWindow(window) IS (A0:=window) BUT (A6:=intuitionbase) BUT ASM ' jsr -72(a6)'
  15. #macro CloseWorkBench() IS (A6:=intuitionbase) BUT ASM ' jsr -78(a6)'
  16. #macro CurrentTime(seconds,micros) IS Stores(intuitionbase,seconds,micros) BUT Loads(A6,A0,A1) BUT ASM ' jsr -84(a6)'
  17. #macro DisplayAlert(alertNumber,string,height) IS Stores(intuitionbase,alertNumber,string,height) BUT Loads(A6,D0,A0,D1) BUT ASM ' jsr -90(a6)'
  18. #macro DisplayBeep(screen) IS (A0:=screen) BUT (A6:=intuitionbase) BUT ASM ' jsr -96(a6)'
  19. #macro DoubleClick(sSeconds,sMicros,cSeconds,cMicros) IS ASM ' movem.l d2-d3/a2-a3,-(a7)' BUT Stores(intuitionbase,sSeconds,sMicros,cSeconds,cMicros) BUT Loads(A6,D0,D1,D2,D3) BUT ASM ' jsr -102(a6)' BUT ASM ' movem.l (a7)+, d2-d3/a2-a3'
  20. #macro DrawBorder(rp,border,leftOffset,topOffset) IS Stores(intuitionbase,rp,border,leftOffset,topOffset) BUT Loads(A6,A0,A1,D0,D1) BUT ASM ' jsr -108(a6)'
  21. #macro DrawImage(rp,image,leftOffset,topOffset) IS Stores(intuitionbase,rp,image,leftOffset,topOffset) BUT Loads(A6,A0,A1,D0,D1) BUT ASM ' jsr -114(a6)'
  22. #macro EndRequest(requester,window) IS Stores(intuitionbase,requester,window) BUT Loads(A6,A0,A1) BUT ASM ' jsr -120(a6)'
  23. #macro GetDefPrefs(preferences,size) IS Stores(intuitionbase,preferences,size) BUT Loads(A6,A0,D0) BUT ASM ' jsr -126(a6)'
  24. #macro GetPrefs(preferences,size) IS Stores(intuitionbase,preferences,size) BUT Loads(A6,A0,D0) BUT ASM ' jsr -132(a6)'
  25. #macro InitRequester(requester) IS (A0:=requester) BUT (A6:=intuitionbase) BUT ASM ' jsr -138(a6)'
  26. #macro ItemAddress(menuStrip,menuNumber) IS Stores(intuitionbase,menuStrip,menuNumber) BUT Loads(A6,A0,D0) BUT ASM ' jsr -144(a6)'
  27. #macro ModifyIDCMP(window,flags) IS Stores(intuitionbase,window,flags) BUT Loads(A6,A0,D0) BUT ASM ' jsr -150(a6)'
  28. #macro ModifyProp(gadget,window,requester,flags,horizPot,vertPot,horizBody,vertBody) IS ASM ' movem.l d2-d7/a2-a5,-(a7)' BUT Stores(intuitionbase,gadget,window,requester,flags,horizPot,vertPot,horizBody,vertBody) BUT Loads(A6,A0,A1,A2,D0,D1,D2,D3,D4) BUT ASM ' jsr -156(a6)' BUT ASM ' movem.l (a7)+, d2-d7/a2-a5'
  29. #macro MoveScreen(screen,dx,dy) IS Stores(intuitionbase,screen,dx,dy) BUT Loads(A6,A0,D0,D1) BUT ASM ' jsr -162(a6)'
  30. #macro MoveWindow(window,dx,dy) IS Stores(intuitionbase,window,dx,dy) BUT Loads(A6,A0,D0,D1) BUT ASM ' jsr -168(a6)'
  31. #macro OffGadget(gadget,window,requester) IS ASM ' movem.l d2-d3/a2-a3,-(a7)' BUT Stores(intuitionbase,gadget,window,requester) BUT Loads(A6,A0,A1,A2) BUT ASM ' jsr -174(a6)' BUT ASM ' movem.l (a7)+, d2-d3/a2-a3'
  32. #macro OffMenu(window,menuNumber) IS Stores(intuitionbase,window,menuNumber) BUT Loads(A6,A0,D0) BUT ASM ' jsr -180(a6)'
  33. #macro OnGadget(gadget,window,requester) IS ASM ' movem.l d2-d3/a2-a3,-(a7)' BUT Stores(intuitionbase,gadget,window,requester) BUT Loads(A6,A0,A1,A2) BUT ASM ' jsr -186(a6)' BUT ASM ' movem.l (a7)+, d2-d3/a2-a3'
  34. #macro OnMenu(window,menuNumber) IS Stores(intuitionbase,window,menuNumber) BUT Loads(A6,A0,D0) BUT ASM ' jsr -192(a6)'
  35. #macro OpenScreen(newScreen) IS (A0:=newScreen) BUT (A6:=intuitionbase) BUT ASM ' jsr -198(a6)'
  36. #macro OpenWindow(newWindow) IS (A0:=newWindow) BUT (A6:=intuitionbase) BUT ASM ' jsr -204(a6)'
  37. #macro OpenWorkBench() IS (A6:=intuitionbase) BUT ASM ' jsr -210(a6)'
  38. #macro PrintIText(rp,iText,left,top) IS Stores(intuitionbase,rp,iText,left,top) BUT Loads(A6,A0,A1,D0,D1) BUT ASM ' jsr -216(a6)'
  39. #macro RefreshGadgets(gadgets,window,requester) IS ASM ' movem.l d2-d3/a2-a3,-(a7)' BUT Stores(intuitionbase,gadgets,window,requester) BUT Loads(A6,A0,A1,A2) BUT ASM ' jsr -222(a6)' BUT ASM ' movem.l (a7)+, d2-d3/a2-a3'
  40. #macro RemoveGadget(window,gadget) IS Stores(intuitionbase,window,gadget) BUT Loads(A6,A0,A1) BUT ASM ' jsr -228(a6)'
  41. ->  The official calling sequence for ReportMouse is given below.
  42. ->  Note the register order.  For the complete story, read the ReportMouse
  43. ->  autodoc.
  44. #macro ReportMouse(flag,window) IS Stores(intuitionbase,flag,window) BUT Loads(A6,D0,A0) BUT ASM ' jsr -234(a6)'
  45. #macro Request(requester,window) IS Stores(intuitionbase,requester,window) BUT Loads(A6,A0,A1) BUT ASM ' jsr -240(a6)'
  46. #macro ScreenToBack(screen) IS (A0:=screen) BUT (A6:=intuitionbase) BUT ASM ' jsr -246(a6)'
  47. #macro ScreenToFront(screen) IS (A0:=screen) BUT (A6:=intuitionbase) BUT ASM ' jsr -252(a6)'
  48. #macro SetDMRequest(window,requester) IS Stores(intuitionbase,window,requester) BUT Loads(A6,A0,A1) BUT ASM ' jsr -258(a6)'
  49. #macro SetMenuStrip(window,menu) IS Stores(intuitionbase,window,menu) BUT Loads(A6,A0,A1) BUT ASM ' jsr -264(a6)'
  50. #macro SetPointer(window,pointer,height,width,xOffset,yOffset) IS ASM ' movem.l d2-d3/a2-a3,-(a7)' BUT Stores(intuitionbase,window,pointer,height,width,xOffset,yOffset) BUT Loads(A6,A0,A1,D0,D1,D2,D3) BUT ASM ' jsr -270(a6)' BUT ASM ' movem.l (a7)+, d2-d3/a2-a3'
  51. #macro SetWindowTitles(window,windowTitle,screenTitle) IS ASM ' movem.l d2-d3/a2-a3,-(a7)' BUT Stores(intuitionbase,window,windowTitle,screenTitle) BUT Loads(A6,A0,A1,A2) BUT ASM ' jsr -276(a6)' BUT ASM ' movem.l (a7)+, d2-d3/a2-a3'
  52. #macro ShowTitle(screen,showIt) IS Stores(intuitionbase,screen,showIt) BUT Loads(A6,A0,D0) BUT ASM ' jsr -282(a6)'
  53. #macro SizeWindow(window,dx,dy) IS Stores(intuitionbase,window,dx,dy) BUT Loads(A6,A0,D0,D1) BUT ASM ' jsr -288(a6)'
  54. #macro ViewAddress() IS (A6:=intuitionbase) BUT ASM ' jsr -294(a6)'
  55. #macro ViewPortAddress(window) IS (A0:=window) BUT (A6:=intuitionbase) BUT ASM ' jsr -300(a6)'
  56. #macro WindowToBack(window) IS (A0:=window) BUT (A6:=intuitionbase) BUT ASM ' jsr -306(a6)'
  57. #macro WindowToFront(window) IS (A0:=window) BUT (A6:=intuitionbase) BUT ASM ' jsr -312(a6)'
  58. #macro WindowLimits(window,widthMin,heightMin,widthMax,heightMax) IS ASM ' movem.l d2-d3/a2-a3,-(a7)' BUT Stores(intuitionbase,window,widthMin,heightMin,widthMax,heightMax) BUT Loads(A6,A0,D0,D1,D2,D3) BUT ASM ' jsr -318(a6)' BUT ASM ' movem.l (a7)+, d2-d3/a2-a3'
  59. -> --- start of next generation of names -------------------------------------
  60. #macro SetPrefs(preferences,size,inform) IS Stores(intuitionbase,preferences,size,inform) BUT Loads(A6,A0,D0,D1) BUT ASM ' jsr -324(a6)'
  61. -> --- start of next next generation of names --------------------------------
  62. #macro IntuiTextLength(iText) IS (A0:=iText) BUT (A6:=intuitionbase) BUT ASM ' jsr -330(a6)'
  63. #macro WBenchToBack() IS (A6:=intuitionbase) BUT ASM ' jsr -336(a6)'
  64. #macro WBenchToFront() IS (A6:=intuitionbase) BUT ASM ' jsr -342(a6)'
  65. -> --- start of next next next generation of names ---------------------------
  66. #macro AutoRequest(window,body,posText,negText,pFlag,nFlag,width,height) IS ASM ' movem.l d2-d3/a2-a3,-(a7)' BUT Stores(intuitionbase,window,body,posText,negText,pFlag,nFlag,width,height) BUT Loads(A6,A0,A1,A2,A3,D0,D1,D2,D3) BUT ASM ' jsr -348(a6)' BUT ASM ' movem.l (a7)+, d2-d3/a2-a3'
  67. #macro BeginRefresh(window) IS (A0:=window) BUT (A6:=intuitionbase) BUT ASM ' jsr -354(a6)'
  68. #macro BuildSysRequest(window,body,posText,negText,flags,width,height) IS ASM ' movem.l d2-d3/a2-a3,-(a7)' BUT Stores(intuitionbase,window,body,posText,negText,flags,width,height) BUT Loads(A6,A0,A1,A2,A3,D0,D1,D2) BUT ASM ' jsr -360(a6)' BUT ASM ' movem.l (a7)+, d2-d3/a2-a3'
  69. #macro EndRefresh(window,complete) IS Stores(intuitionbase,window,complete) BUT Loads(A6,A0,D0) BUT ASM ' jsr -366(a6)'
  70. #macro FreeSysRequest(window) IS (A0:=window) BUT (A6:=intuitionbase) BUT ASM ' jsr -372(a6)'
  71. ->  The return codes for MakeScreen(), RemakeDisplay(), and RethinkDisplay()
  72. ->  are only valid under V39 and greater.  Do not examine them when running
  73. ->  on pre-V39 systems!
  74. #macro MakeScreen(screen) IS (A0:=screen) BUT (A6:=intuitionbase) BUT ASM ' jsr -378(a6)'
  75. #macro RemakeDisplay() IS (A6:=intuitionbase) BUT ASM ' jsr -384(a6)'
  76. #macro RethinkDisplay() IS (A6:=intuitionbase) BUT ASM ' jsr -390(a6)'
  77. -> --- start of next next next next generation of names ----------------------
  78. #macro AllocRemember(rememberKey,size,flags) IS Stores(intuitionbase,rememberKey,size,flags) BUT Loads(A6,A0,D0,D1) BUT ASM ' jsr -396(a6)'
  79. ->  Public function AlohaWorkbench() is intentionally not documented
  80. #macro AlohaWorkbench(wbport) IS (A0:=wbport) BUT (A6:=intuitionbase) BUT ASM ' jsr -402(a6)'
  81. #macro FreeRemember(rememberKey,reallyForget) IS Stores(intuitionbase,rememberKey,reallyForget) BUT Loads(A6,A0,D0) BUT ASM ' jsr -408(a6)'
  82. -> --- start of 15 Nov 85 names ------------------------
  83. #macro LockIBase(dontknow) IS (D0:=dontknow) BUT (A6:=intuitionbase) BUT ASM ' jsr -414(a6)'
  84. #macro UnlockIBase(ibLock) IS (A0:=ibLock) BUT (A6:=intuitionbase) BUT ASM ' jsr -420(a6)'
  85. -> --- functions in V33 or higher (Release 1.2) ---
  86. #macro GetScreenData(buffer,size,type,screen) IS Stores(intuitionbase,buffer,size,type,screen) BUT Loads(A6,A0,D0,D1,A1) BUT ASM ' jsr -426(a6)'
  87. #macro RefreshGList(gadgets,window,requester,numGad) IS ASM ' movem.l d2-d3/a2-a3,-(a7)' BUT Stores(intuitionbase,gadgets,window,requester,numGad) BUT Loads(A6,A0,A1,A2,D0) BUT ASM ' jsr -432(a6)' BUT ASM ' movem.l (a7)+, d2-d3/a2-a3'
  88. #macro AddGList(window,gadget,position,numGad,requester) IS ASM ' movem.l d2-d3/a2-a3,-(a7)' BUT Stores(intuitionbase,window,gadget,position,numGad,requester) BUT Loads(A6,A0,A1,D0,D1,A2) BUT ASM ' jsr -438(a6)' BUT ASM ' movem.l (a7)+, d2-d3/a2-a3'
  89. #macro RemoveGList(remPtr,gadget,numGad) IS Stores(intuitionbase,remPtr,gadget,numGad) BUT Loads(A6,A0,A1,D0) BUT ASM ' jsr -444(a6)'
  90. #macro ActivateWindow(window) IS (A0:=window) BUT (A6:=intuitionbase) BUT ASM ' jsr -450(a6)'
  91. #macro RefreshWindowFrame(window) IS (A0:=window) BUT (A6:=intuitionbase) BUT ASM ' jsr -456(a6)'
  92. #macro ActivateGadget(gadgets,window,requester) IS ASM ' movem.l d2-d3/a2-a3,-(a7)' BUT Stores(intuitionbase,gadgets,window,requester) BUT Loads(A6,A0,A1,A2) BUT ASM ' jsr -462(a6)' BUT ASM ' movem.l (a7)+, d2-d3/a2-a3'
  93. #macro NewModifyProp(gadget,window,requester,flags,horizPot,vertPot,horizBody,vertBody,numGad) IS ASM ' movem.l d2-d7/a2-a5,-(a7)' BUT Stores(intuitionbase,gadget,window,requester,flags,horizPot,vertPot,horizBody,vertBody,numGad) BUT Loads(A6,A0,A1,A2,D0,D1,D2,D3,D4,D5) BUT ASM ' jsr -468(a6)' BUT ASM ' movem.l (a7)+, d2-d7/a2-a5'
  94. -> --- functions in V36 or higher (Release 2.0) ---
  95. #macro QueryOverscan(displayID,rect,oScanType) IS Stores(intuitionbase,displayID,rect,oScanType) BUT Loads(A6,A0,A1,D0) BUT ASM ' jsr -474(a6)'
  96. #macro MoveWindowInFrontOf(window,behindWindow) IS Stores(intuitionbase,window,behindWindow) BUT Loads(A6,A0,A1) BUT ASM ' jsr -480(a6)'
  97. #macro ChangeWindowBox(window,left,top,width,height) IS ASM ' movem.l d2-d3/a2-a3,-(a7)' BUT Stores(intuitionbase,window,left,top,width,height) BUT Loads(A6,A0,D0,D1,D2,D3) BUT ASM ' jsr -486(a6)' BUT ASM ' movem.l (a7)+, d2-d3/a2-a3'
  98. #macro SetEditHook(hook) IS (A0:=hook) BUT (A6:=intuitionbase) BUT ASM ' jsr -492(a6)'
  99. #macro SetMouseQueue(window,queueLength) IS Stores(intuitionbase,window,queueLength) BUT Loads(A6,A0,D0) BUT ASM ' jsr -498(a6)'
  100. #macro ZipWindow(window) IS (A0:=window) BUT (A6:=intuitionbase) BUT ASM ' jsr -504(a6)'
  101. -> --- public screens ---
  102. #macro LockPubScreen(name) IS (A0:=name) BUT (A6:=intuitionbase) BUT ASM ' jsr -510(a6)'
  103. #macro UnlockPubScreen(name,screen) IS Stores(intuitionbase,name,screen) BUT Loads(A6,A0,A1) BUT ASM ' jsr -516(a6)'
  104. #macro LockPubScreenList() IS (A6:=intuitionbase) BUT ASM ' jsr -522(a6)'
  105. #macro UnlockPubScreenList() IS (A6:=intuitionbase) BUT ASM ' jsr -528(a6)'
  106. #macro NextPubScreen(screen,namebuf) IS Stores(intuitionbase,screen,namebuf) BUT Loads(A6,A0,A1) BUT ASM ' jsr -534(a6)'
  107. #macro SetDefaultPubScreen(name) IS (A0:=name) BUT (A6:=intuitionbase) BUT ASM ' jsr -540(a6)'
  108. #macro SetPubScreenModes(modes) IS (D0:=modes) BUT (A6:=intuitionbase) BUT ASM ' jsr -546(a6)'
  109. #macro PubScreenStatus(screen,statusFlags) IS Stores(intuitionbase,screen,statusFlags) BUT Loads(A6,A0,D0) BUT ASM ' jsr -552(a6)'
  110. -> 
  111. #macro ObtainGIRPort(gInfo) IS (A0:=gInfo) BUT (A6:=intuitionbase) BUT ASM ' jsr -558(a6)'
  112. #macro ReleaseGIRPort(rp) IS (A0:=rp) BUT (A6:=intuitionbase) BUT ASM ' jsr -564(a6)'
  113. #macro GadgetMouse(gadget,gInfo,mousePoint) IS ASM ' movem.l d2-d3/a2-a3,-(a7)' BUT Stores(intuitionbase,gadget,gInfo,mousePoint) BUT Loads(A6,A0,A1,A2) BUT ASM ' jsr -570(a6)' BUT ASM ' movem.l (a7)+, d2-d3/a2-a3'
  114. #macro GetDefaultPubScreen(nameBuffer) IS (A0:=nameBuffer) BUT (A6:=intuitionbase) BUT ASM ' jsr -582(a6)'
  115. #macro EasyRequestArgs(window,easyStruct,idcmpPtr,args) IS ASM ' movem.l d2-d3/a2-a3,-(a7)' BUT Stores(intuitionbase,window,easyStruct,idcmpPtr,args) BUT Loads(A6,A0,A1,A2,A3) BUT ASM ' jsr -588(a6)' BUT ASM ' movem.l (a7)+, d2-d3/a2-a3'
  116. #macro BuildEasyRequestArgs(window,easyStruct,idcmp,args) IS ASM ' movem.l d2-d3/a2-a3,-(a7)' BUT Stores(intuitionbase,window,easyStruct,idcmp,args) BUT Loads(A6,A0,A1,D0,A3) BUT ASM ' jsr -594(a6)' BUT ASM ' movem.l (a7)+, d2-d3/a2-a3'
  117. #macro SysReqHandler(window,idcmpPtr,waitInput) IS Stores(intuitionbase,window,idcmpPtr,waitInput) BUT Loads(A6,A0,A1,D0) BUT ASM ' jsr -600(a6)'
  118. #macro OpenWindowTagList(newWindow,tagList) IS Stores(intuitionbase,newWindow,tagList) BUT Loads(A6,A0,A1) BUT ASM ' jsr -606(a6)'
  119. #macro OpenScreenTagList(newScreen,tagList) IS Stores(intuitionbase,newScreen,tagList) BUT Loads(A6,A0,A1) BUT ASM ' jsr -612(a6)'
  120. -> 
  121. ->     new Image functions
  122. #macro DrawImageState(rp,image,leftOffset,topOffset,state,drawInfo) IS ASM ' movem.l d2-d3/a2-a3,-(a7)' BUT Stores(intuitionbase,rp,image,leftOffset,topOffset,state,drawInfo) BUT Loads(A6,A0,A1,D0,D1,D2,A2) BUT ASM ' jsr -618(a6)' BUT ASM ' movem.l (a7)+, d2-d3/a2-a3'
  123. #macro PointInImage(point,image) IS Stores(intuitionbase,point,image) BUT Loads(A6,D0,A0) BUT ASM ' jsr -624(a6)'
  124. #macro EraseImage(rp,image,leftOffset,topOffset) IS Stores(intuitionbase,rp,image,leftOffset,topOffset) BUT Loads(A6,A0,A1,D0,D1) BUT ASM ' jsr -630(a6)'
  125. -> 
  126. #macro NewObjectA(classPtr,classID,tagList) IS ASM ' movem.l d2-d3/a2-a3,-(a7)' BUT Stores(intuitionbase,classPtr,classID,tagList) BUT Loads(A6,A0,A1,A2) BUT ASM ' jsr -636(a6)' BUT ASM ' movem.l (a7)+, d2-d3/a2-a3'
  127. -> 
  128. #macro DisposeObject(object) IS (A0:=object) BUT (A6:=intuitionbase) BUT ASM ' jsr -642(a6)'
  129. #macro SetAttrsA(object,tagList) IS Stores(intuitionbase,object,tagList) BUT Loads(A6,A0,A1) BUT ASM ' jsr -648(a6)'
  130. -> 
  131. #macro GetAttr(attrID,object,storagePtr) IS Stores(intuitionbase,attrID,object,storagePtr) BUT Loads(A6,D0,A0,A1) BUT ASM ' jsr -654(a6)'
  132. -> 
  133. ->      special set attribute call for gadgets
  134. #macro SetGadgetAttrsA(gadget,window,requester,tagList) IS ASM ' movem.l d2-d3/a2-a3,-(a7)' BUT Stores(intuitionbase,gadget,window,requester,tagList) BUT Loads(A6,A0,A1,A2,A3) BUT ASM ' jsr -660(a6)' BUT ASM ' movem.l (a7)+, d2-d3/a2-a3'
  135. -> 
  136. ->     for class implementors only
  137. #macro NextObject(objectPtrPtr) IS (A0:=objectPtrPtr) BUT (A6:=intuitionbase) BUT ASM ' jsr -666(a6)'
  138. #macro MakeClass(classID,superClassID,superClassPtr,instanceSize,flags) IS ASM ' movem.l d2-d3/a2-a3,-(a7)' BUT Stores(intuitionbase,classID,superClassID,superClassPtr,instanceSize,flags) BUT Loads(A6,A0,A1,A2,D0,D1) BUT ASM ' jsr -678(a6)' BUT ASM ' movem.l (a7)+, d2-d3/a2-a3'
  139. #macro AddClass(classPtr) IS (A0:=classPtr) BUT (A6:=intuitionbase) BUT ASM ' jsr -684(a6)'
  140. -> 
  141. -> 
  142. #macro GetScreenDrawInfo(screen) IS (A0:=screen) BUT (A6:=intuitionbase) BUT ASM ' jsr -690(a6)'
  143. #macro FreeScreenDrawInfo(screen,drawInfo) IS Stores(intuitionbase,screen,drawInfo) BUT Loads(A6,A0,A1) BUT ASM ' jsr -696(a6)'
  144. -> 
  145. #macro ResetMenuStrip(window,menu) IS Stores(intuitionbase,window,menu) BUT Loads(A6,A0,A1) BUT ASM ' jsr -702(a6)'
  146. #macro RemoveClass(classPtr) IS (A0:=classPtr) BUT (A6:=intuitionbase) BUT ASM ' jsr -708(a6)'
  147. #macro FreeClass(classPtr) IS (A0:=classPtr) BUT (A6:=intuitionbase) BUT ASM ' jsr -714(a6)'
  148. -> --- functions in V39 or higher (Release 3) ---
  149. #macro AllocScreenBuffer(sc,bm,flags) IS Stores(intuitionbase,sc,bm,flags) BUT Loads(A6,A0,A1,D0) BUT ASM ' jsr -768(a6)'
  150. #macro FreeScreenBuffer(sc,sb) IS Stores(intuitionbase,sc,sb) BUT Loads(A6,A0,A1) BUT ASM ' jsr -774(a6)'
  151. #macro ChangeScreenBuffer(sc,sb) IS Stores(intuitionbase,sc,sb) BUT Loads(A6,A0,A1) BUT ASM ' jsr -780(a6)'
  152. #macro ScreenDepth(screen,flags,reserved) IS Stores(intuitionbase,screen,flags,reserved) BUT Loads(A6,A0,D0,A1) BUT ASM ' jsr -786(a6)'
  153. #macro ScreenPosition(screen,flags,x1,y1,x2,y2) IS ASM ' movem.l d2-d7/a2-a5,-(a7)' BUT Stores(intuitionbase,screen,flags,x1,y1,x2,y2) BUT Loads(A6,A0,D0,D1,D2,D3,D4) BUT ASM ' jsr -792(a6)' BUT ASM ' movem.l (a7)+, d2-d7/a2-a5'
  154. #macro ScrollWindowRaster(win,dx,dy,xMin,yMin,xMax,yMax) IS ASM ' movem.l d2-d7/a2-a5,-(a7)' BUT Stores(intuitionbase,win,dx,dy,xMin,yMin,xMax,yMax) BUT Loads(A6,A1,D0,D1,D2,D3,D4,D5) BUT ASM ' jsr -798(a6)' BUT ASM ' movem.l (a7)+, d2-d7/a2-a5'
  155. #macro LendMenus(fromwindow,towindow) IS Stores(intuitionbase,fromwindow,towindow) BUT Loads(A6,A0,A1) BUT ASM ' jsr -804(a6)'
  156. #macro DoGadgetMethodA(gad,win,req,message) IS ASM ' movem.l d2-d3/a2-a3,-(a7)' BUT Stores(intuitionbase,gad,win,req,message) BUT Loads(A6,A0,A1,A2,A3) BUT ASM ' jsr -810(a6)' BUT ASM ' movem.l (a7)+, d2-d3/a2-a3'
  157. #macro SetWindowPointerA(win,taglist) IS Stores(intuitionbase,win,taglist) BUT Loads(A6,A0,A1) BUT ASM ' jsr -816(a6)'
  158. #macro TimedDisplayAlert(alertNumber,string,height,time) IS Stores(intuitionbase,alertNumber,string,height,time) BUT Loads(A6,D0,A0,D1,A1) BUT ASM ' jsr -822(a6)'
  159. #macro HelpControl(win,flags) IS Stores(intuitionbase,win,flags) BUT Loads(A6,A0,D0) BUT ASM ' jsr -828(a6)'
  160.